const Koa = require("koa");
const views = require("koa-views");
const static = require("koa-static");
const koaBody = require("koa-body");
const Router = require("koa-router");
const fs = require("fs");
let app  =new Koa();
let router = new Router();
app.use(views(__dirname+"/views"));
app.use(static(__dirname+"/static"));
app.use(koaBody({
    multipart:true
}))
router.get("/addnews",async ctx=>{
    await ctx.render("addNews.html");
})

router.post("/postfile",ctx=>{
    console.log(ctx.request.body);
    console.log(ctx.request.files);

    // 转存文件 ，文件的路径
    let temppath = ctx.request.files.myimg.filepath;
    let filename = ctx.request.files.myimg.originalFilename;
    fs.copyFileSync(temppath,"./static/uploads/"+filename);
    // 存数据 ，文件路径
    let fileurl = "./uploads/"+filename
    let newObj = {...ctx.request.body,fileurl};
    if(!fs.existsSync("./data/data.json")){
        // 没有存储的时候直接存新数据
        fs.writeFileSync("./data/data.json",JSON.stringify([newObj]));
    }else{
        // 已经存了 ，获取存储内容 ，添加新内容 然后再存储一遍
       let data =  JSON.parse(fs.readFileSync("./data/data.json"));
       data.push(newObj);
       fs.writeFileSync("./data/data.json",JSON.stringify(data));
    }
    // fs.writeFileSync();
    ctx.body = {
        info:"成功"
    }
})

app.use(router.routes());
app.listen(8989);

// mvc 规划项目 
// mvvm 规划